082e57baf6c61c36dc22d7c174400df782c22fff,core/kernel/source/jetbrains/mps/watching/ModelChangesWatcher.java,BulkFileCahngesListener,after,#List#,99
Before Change
for (final VFileEvent event : events) {
String path = event.getPath();
File file = new File(path);
FileUtil.processFilesRecursively(file, new Processor<File>() {
public boolean process(File file) {
String filePath = file.getAbsolutePath();
if (MPSFileTypesManager.instance().isModelFile(filePath)) {
ModelFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
} else if (MPSFileTypesManager.instance().isModuleFile(filePath)) {
ModuleFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
}
return true;
}
});
if (MPSFileTypesManager.instance().isModelFile(path)) {
ModelFileProcessor.getInstance().process(event, reloadSession);
} else if (MPSFileTypesManager.instance().isModuleFile(path)) {
After Change
String path = event.getPath();
File file = new File(path);
if (file.isDirectory() && file.exists()) {
FileUtil.processFilesRecursively(file, new Processor<File>() {
public boolean process(File file) {
String filePath = file.getAbsolutePath();
if (MPSFileTypesManager.instance().isModelFile(filePath)) {
ModelFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
} else if (MPSFileTypesManager.instance().isModuleFile(filePath)) {
ModuleFileProcessor.getInstance().process(new VFileEventDecorator(event, filePath), reloadSession);
}
return true;
}
});
}
if (MPSFileTypesManager.instance().isModelFile(path)) {
ModelFileProcessor.getInstance().process(event, reloadSession);